<?php 

/**
 * Joomla! 1.5 component arts_curriculum
 * @package    arts_curriculum
 * @subpackage
 * @author     Chris Borkowski {@link http://www.guggenheim.org}
 * @author     Created on 31-August-2009
 * @author    Modified on 29-December-2009
 */
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport('joomla.application.component.view');


/**
* HTML View class for the arts_curriculum component
* @package Arts_curriculum
*/
	  class Arts_curriculumViewCategory extends JView
	  {
		function display( $tpl = null )
		{
			global $mainframe, $option;
		 	
		 	
		 	// Initialize some variables
		    $document = &JFactory::getDocument();
		  	$document->addStyleSheet($this->baseurl.'/components/com_arts_curriculum/css/ac_front.css');
		  	$uri = &JFactory::getURI();
		  	$pathway = &$mainframe->getPathway();
		 
		 	// Get the parameters of the active menu item
		  	$menus = &JSite::getMenu();
		  	$menu = $menus->getActive();
		 
		 	// Get some data from the model
		  	$items = &$this->get('data' );
		  	$total = &$this->get('total');
		  	$pagination = &$this->get('pagination');
		  	$category = &$this->get('category' );
		  	$state = &$this->get('state');
		
			//get the categories model, so we can use it also here
		 	$model =& JModel::getInstance('categories', 'arts_curriculummodel');
		  	$categories =& $model->getData();
		 	
		 	// Get the page/component configuration
		  	$params = &$mainframe->getParams();
		 	$category->total = $total;
		 	
		 	
		 	//load & process system content plugins ! note we are running it on the category array
			$dispatcher = & JDispatcher::getInstance();
			JPluginHelper::importPlugin('content');
			$results = $dispatcher->trigger('onPrepareContent', array (& $category, & $params, 1));
		 	
		 	// Add alternate feed link
		  	if($params->get('show_feed_link', 1) == 1)
		  	{
		  	$link = '&view=category&id='.$category->slug.'&format=feed&limitstart=';
		  	$attribs = array('type' => 'application/rss+xml', 'title' => 'RSS 2.0');
		  	$document->addHeadLink(JRoute::_($link.'&type=rss'), 'alternate', 'rel', $attribs);
		  	$attribs = array('type' => 'application/atom+xml', 'title' => 'Atom 1.0');
		  	$document->addHeadLink(JRoute::_($link.'&type=atom'), 'alternate', 'rel', $attribs);
		  	}
		 
// 		 	$feed = "index.php?option=com_yourcomponent&controller=feed&view=rss&id=&Itemid=23&format=feed";
// 			$rss = array(
//   			 'type'    =>  'application/rss+xml',
//    				'title'   =>   'RSS 1.0');
//       
// 			$atom = array(
//    			'type'    =>  'application/atom+xml',
//    			'title'   =>   'Atom');
//             
//       		$document->addHeadLink(JRoute::_($feed.'&type=rss'), 'alternate', 'rel', $rss);
//       		$document->addHeadLink(JRoute::_($feed.'&type=atom'), 'alternate', 'rel', $atom);
		 
		 	
		 	$menus = &JSite::getMenu();
		  	$menu = $menus->getActive();
		 	
		 	// because the application sets a default page title, we need to get it
		  	// right from the menu item itself
		  	if (is_object( $menu )) {
		  	$menu_params = new JParameter( $menu->params );
		  	if (!$menu_params->get( 'page_title')) {
		  	$params->set('page_title', $category->title);
		  	}
		  	} else {
		  	$params->set('page_title', $category->title);
		  	}
		  	$document->setTitle( $params->get( 'page_title' ) );
		 
		 	
		 	//set breadcrumbs
		  	if(is_object($menu) && $menu->query['view'] != 'category') {
		  	$pathway->addItem($category->title, '');
		  	}
		 
		 	// Prepare category description
		  	$category->description = JHTML::_('content.prepare', $category->description);
		 	// table ordering
		  	$lists['order_Dir'] = $state->get('filter_order_dir');
		  	$lists['order'] = $state->get('filter_order');
		 	
		 	// Set some defaults if not set for params
		  	$params->def('comp_description', JText::_('ARTS_CURRICULUM_DESC'));
		  
		  
		  	// Define image tag attributes
		  	if (isset( $category->image ) && $category->image != '')
		  	{
		  	$attribs['align'] = $category->image_position;
		  	$attribs['hspace'] = 6;
		 	
		 	// Use the static HTML library to build the image tag
		  	$category->image = JHTML::_('image', 'images/stories/'.$category->image, JText::_('ARTS_CURRICULUM'), $attribs);
		  	}
		 	
		 	// icon in table display
		  	if ( $params->get( 'link_icons' ) <> -1 ) {
		  	$image = JHTML::_('image.site', $params->get('link_icons', 'weblink.png'), '/images/M_images/', $params->get( 'weblink_icons' ), '/images/M_images/', 'Link' );
		  	}
		 	
		 	$k = 0;
		  	
		  	$count = count($items);
		  	
		  	for($i = 0; $i < $count; $i++)
		  	{
		 	$item =& $items[$i];
		 	//two one slugs in the model one made in SQL QUERY on in a for loop in _getData()
		 	$link = JRoute::_( 'index.php?view=item&catid='.$category->slug.'&id='. $item->id);
		 	
		 	$menuclass = 'category'.$params->get( 'pageclass_sfx' );
		 	$itemParams = new JParameter($item->params);
		  	$item->link = '<a href="'. $link .'" class="ac_intro_cat_link">'. $this->escape($item->title) .'</a>';  
		 	
		 	//category link 
		 	$CATlink = JRoute::_( 'index.php?view=category&id='.$category->slug);
		 	$item->CATlink = '<a href="'. $CATlink .'" class="ac_category_cat_link">'. $this->escape($category->title) .'</a>'; 
		 	
		 	// link to wrap image
		 	$item->imagelink = JRoute::_( 'index.php?view=item&catid='.$category->slug.'&id='. $item->id);
		 	
		 	$item->subjectlinks = Arts_curriculumFrontHelper::subjectlinks2($item->subject); 
		 	
		 	// drop this soon
		 	$item->image = $image;
		 	//make alternateding numbers
		 	$item->odd = $k;
		  	$item->count = $i;
		  	$k = 1 - $k;
		  	}
		 
			//well never need it		 
		 	$count = count($categories);
		  	for($i = 0; $i < $count; $i++)
		  	{
		  	$cat =& $categories[$i];
		  	$cat->link = JRoute::_('index.php?option=com_arts_curriculum&view=category&id='. $cat->slug);
		  	}
		 
		 	// push items into the default view 
		 	$this->assignRef('lists', $lists);
		  	$this->assignRef('params', $params);
		  	$this->assignRef('category', $category);
		 	$this->assignRef('categories', $categories);
		  	$this->assignRef('items', $items);
		  	$this->assignRef('pagination', $pagination);
		 
		 	parent::display($tpl);
		  	}
	
	}